package com.adms.domain;

import com.adms.domain.Circular;
import com.adms.domain.CircularExample;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

@Mapper
public interface CircularMapper {

//	
	List<Map<String, Object>> selectByExampleAndKeyWithCanReply(@Param("ex") CircularExample ex,
			@Param("key") String key, @Param("userId") Integer userId, @Param("role") String role);

	List<Circular> selectByExampleAndKey(@Param("ex") CircularExample ex, @Param("key") String key);

	List<Map<String, Object>> selectByExampleWithCanReply(@Param("ex") CircularExample ex,
			@Param("userId") Integer userId, @Param("role") String role);

	Map<String, Object> selectByCircularIdWithCanReply(@Param("circularId") Integer circularId,
			@Param("userId") Integer userId);

	void deleteBatch(int[] circularIds);
//

	long countByExample(CircularExample example);

	int deleteByExample(CircularExample example);

	int deleteByPrimaryKey(Integer circularId);

	int insert(Circular record);

	int insertSelective(Circular record);

	List<Circular> selectByExample(CircularExample example);

	Circular selectByPrimaryKey(Integer circularId);

	int updateByExampleSelective(@Param("record") Circular record, @Param("example") CircularExample example);

	int updateByExample(@Param("record") Circular record, @Param("example") CircularExample example);

	int updateByPrimaryKeySelective(Circular record);

	int updateByPrimaryKey(Circular record);

}